home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1993 July / InfoMagic USENET CD-ROM July 1993.ISO / sources / unix / volume14 / pcomm / part01 next >
Encoding:
Internet Message Format  |  1988-05-17  |  53.3 KB

  1. Subject:  v14i099:  Dial out and terminal emulator, Part01/06
  2. Newsgroups: comp.sources.unix
  3. Sender: sources
  4. Approved: rsalz@uunet.UU.NET
  5.  
  6. Submitted-by: fthood!egray@uunet.UU.NET
  7. Posting-number: Volume 14, Issue 99
  8. Archive-name: pcomm/part01
  9.  
  10. Pcomm is a public domain telecommunication program for Unix designed to
  11. operate similar to the popular MSDOS program, ProComm.  ProComm (TM) is
  12. copyrighted by Datastorm Technologies Inc.
  13.  
  14. The program has a minor quirk which may be irritating to some...  In order
  15. to get pop-up windows to work while communicating with another system, the
  16. program has to keep a duplicate copy of what it thinks is on the screen.
  17. This "virtual screen" is only used to repaint the background during the 
  18. transition from the terminal mode to the command mode.  The problem is
  19. that the virtual screen currently doesn't "understand" escape sequences.
  20. For example, when the screen is repainted, instead of clearing the screen,
  21. the string "^[[2J" will appear.  Since the virtual screen is ONLY USED in
  22. the command mode, the quirk doesn't detract from the usefulness of the
  23. program (in my humble opinion).  No bug reports on this, please... I'm
  24. working on it!
  25.  
  26. Have fun...
  27.  
  28. Emmet P. Gray                US Army, HQ III Corps & Fort Hood
  29. ...!ihnp4!uiucuxc!fthood!egray        Attn: AFZF-DE-ENV
  30.                     Directorate of Engineering & Housing
  31.                     Environmental Management Office
  32.                     Fort Hood, TX 76544-5057
  33.  
  34. -----------------------------------------------------------------------------
  35. #! /bin/sh
  36. # This is a shell archive, meaning:
  37. # 1. Remove everything above the #! /bin/sh line.
  38. # 2. Save the resulting text in a file.
  39. # 3. Execute the file with /bin/sh (not csh) to create:
  40. #    Readme
  41. #    Release.notes
  42. #    Doc
  43. #    Pcomm.1
  44. #    Pcomm.dial_dir
  45. #    Pcomm.modem
  46. #    Pcomm.param
  47. export PATH; PATH=/bin:/usr/bin:$PATH
  48. echo shar: "extracting 'Readme'" '(7859 characters)'
  49. if test -f 'Readme'
  50. then
  51.     echo shar: "will not over-write existing file 'Readme'"
  52. else
  53. sed 's/^X//' << \SHAR_EOF > 'Readme'
  54. X
  55. X                  Pcomm
  56. X              A Unix Telecommunication Program
  57. X
  58. XRequirements:
  59. X
  60. X    Pcomm will not run on terminals with a screen size of less than
  61. X    80 columns by 24 lines or on terminals that lack cursor movement
  62. X    capabilities.  For terminals without arrow keys, use the letter
  63. X    "U" in place of "up arrow" and the letter "N" in place of 
  64. X    "down arrow".
  65. X
  66. X    Running Pcomm from a dialup line at 1200 baud will be make the
  67. X    windows incredibly slow.
  68. X
  69. XPortability:
  70. X
  71. X    This program was written with AT&T System V in mind.  It makes
  72. X    use of System V specific routines such as those in termio(7).
  73. X    There is currently no port to Berkeley or v7 Unix.
  74. X
  75. X    This program can make use of the newer curses(3) routines from
  76. X    SVR2.  There is a compile-time definition OLDCURSES for compatibility
  77. X    with older flavors of curses(3).  None of the functionality is
  78. X    lost using older curses, only some of the whistles and bells.
  79. X
  80. X    Included in the distribution package is a shell script named
  81. X    "Unixpc.shar" that contains the Makefile specific for the AT&T
  82. X    Unix PC 7300.
  83. X
  84. X    Pcomm makes use of the bold, blinking and standout video attributes.
  85. X    My concept of "standout" and "reverse" might be different than
  86. X    yours (I like "standout" to be a brighter version of "reverse").
  87. X    Check your terminfo database... 
  88. X
  89. X    Flavors of curses without the keypad() function won't be able to
  90. X    recognize arrow keys on the terminal, so users will have to
  91. X    substitute the letters described above for the arrow keys.
  92. X
  93. XThings to do:
  94. X
  95. X    There are many pre-processor definitions located in the source
  96. X    code that alter the way pcomm works, or gives the location of other
  97. X    files.  The following list shows the location and default settings
  98. X    of these definitions:
  99. X
  100. X    LOG_CALLS    Should pcomm keep a log of all phone calls?  The
  101. X            default in admin.c is no (#undef).  If defined,
  102. X            the path to the log file is in LOGFILE.
  103. X    
  104. X    LIMIT_LD    Should access to long distance dialing be limited
  105. X            to privileged users?  The default in admin.c is
  106. X            no (#undef).  If defined, the group to check is in
  107. X            GRPNAME.
  108. X
  109. X    LPRINT        This is the pretty line print program.  (This is not
  110. X            the name of the device).  The default in d_print.c
  111. X            is "/usr/bin/lprint".
  112. X
  113. X    MAX_PASS    The maximum number of dialing attempts before we
  114. X            give up.  The default in di_win.c is 25.
  115. X
  116. X    DEFAULT        The directory containing the default support files.
  117. X            It is not intended that users have write permission
  118. X            on these files.  The default in init.c is
  119. X            "/usr/local/lib/pcomm".
  120. X        
  121. X    LPR        The generic line printer program.  (This is not the
  122. X            name of the device).  The default in input.c is
  123. X            "/usr/bin/lpr".
  124. X
  125. X    LOCKDIR        The location of the UUCP lock files.  The default
  126. X            in port.c is "/usr/spool/uucp".  (HoneyDanBer UUCP
  127. X            normally uses /usr/spool/locks).
  128. X
  129. X    ASCII_PID    Should the pid (process ID) in the UUCP lock file
  130. X            be ASCII encoded?  The default in port.c is no
  131. X            (#undef). (HoneyDanBer UUCP normally uses ASCII pids).
  132. X
  133. X    NUM_DIR        The maximum slots in the dialing directory.  The
  134. X            default in dial_dir.h is 100.
  135. X
  136. X    NUM_QUEUE    The maximum slots in the dialing queue.  The default
  137. X            in dial_dir.h is 10.
  138. X
  139. X    NOPROMOTE    Should missing video attributes be promoted to
  140. X            standout?  The default in misc.h is no (#undef).
  141. X
  142. X    NUM_TTY        The maximum number of ttys used for dialout.  The
  143. X            default in modem.h is 10.
  144. X
  145. X    NUM_MODEM    The maximum number of different types of modems used
  146. X            for dialout.  The default in modem.h is 10.
  147. X
  148. X    MAX_ERRORS     The maximum number of errors for a single block
  149. X            before we give up on a file transfer.  The default
  150. X            in xmodem.h is 10.
  151. X
  152. X    The compile-time definition SGID is specific to my system, but
  153. X    others might find it useful.  On my system, all programs that 
  154. X    access the dialout modems, are set-group-id to "uucp".  (This is
  155. X    because normal users don't have write permission to the devices,
  156. X    the lock directory, or the phone.call logfile).  The use of
  157. X    SGID will assure that the real group id is restored during shell
  158. X    escapes, open()s, etc.  The access(2) routine is used to determine
  159. X    read and write permissions prior to opening files.
  160. X
  161. X    The distribution package contains three sample support files named
  162. X    "Pcomm.dial_dir", "Pcomm.modem", and "Pcomm.param".  These files
  163. X    should be renamed to change the upper case "P" to a lower case
  164. X    "p" and copied into the directory given in the DEFAULT definition
  165. X    described above.
  166. X
  167. XDocumentation:
  168. X
  169. X    The reference documentation file, "Doc" is designed to run thru
  170. X    the Unix "pr" command before being sent to the printer.  For example:
  171. X
  172. X    pr -h "          Pcomm Reference Manual              " | lpr
  173. X
  174. X    The file "Pcomm.1" is a nroff manual page suitable for copying
  175. X    into /usr/man/man1.
  176. X
  177. XSetup:
  178. X
  179. X    Before pcomm can be used properly, the tty/modem database must be
  180. X    configured to match your system.  The "pcomm.modem" file should
  181. X    be edited by the "TTY Setup" and "Modem Setup" menus.
  182. X
  183. X    The shell archive "Unixpc.shar" contains the Pcomm.modem file
  184. X    specific to the AT&T Unix PC 7300.  (Its codes are NOT intuitive)
  185. X
  186. XWhere similarities end:
  187. X
  188. X    When pcomm is first executed, it hasn't yet selected a communications
  189. X    port to use, so characters typed at the blank screen are ignored.
  190. X    To get a port without pcomm doing the dialing, select an empty
  191. X    entry in the dialing directory, or use the manual dial option with
  192. X    the phone number set to a single space character.  The second field
  193. X    in the status line will show what tty port is currently in use.
  194. X
  195. X    Since all printing goes through the Unix print spooler, the printer
  196. X    logging feature will not output characters as they appear on the
  197. X    screen.  Printing will actually start when the print logging is
  198. X    toggled off (and the complete print job is sent to the spool).
  199. X
  200. X    Pcomm doesn't emulate any terminals... Whatever terminal you're on
  201. X    is what the remote system sees.
  202. X
  203. X    Pcomm doesn't have a script language or command interpreter.  The
  204. X    index field of the dialing directory is used instead to act as a
  205. X    shortcut into the dialing directory from the "-f" command line
  206. X    option.  The index field is also used to specify a particular tty
  207. X    to be used (as opposed to searching the list of ttys for the first
  208. X    free one).  This feature must be used on direct connections with
  209. X    other machines.  For example, if tty12 is a hard-wired port to
  210. X    "System A", then the dialing directory entry for "System A" would
  211. X    have "tty12" in the index field.
  212. X
  213. XKnown limitations:
  214. X
  215. X    The keyboard macro feature is not implemented at this time.
  216. X
  217. X    The true screen contents are lost when the "hot key" is pressed.
  218. X    Pcomm attempts to compensate (rather poorly) by repainting a
  219. X    virtual screen of what it thinks the true screen should look like.
  220. X    Escape sequences in the virtual screen image will be ignored when
  221. X    the background is repainted.  For example, if you're on a vt100 
  222. X    and you receive a ^[[2J to clear the screen, the screen *will* be
  223. X    cleared... but when the screen is repainted, it will contain the
  224. X    characters ^[, [, 2, J (instead of performing the function).
  225. X
  226. X    The disp_tty() routine in s_tty.c currently does not support a
  227. X    NUM_TTY definition of greater than 10.
  228. X
  229. X    For some strange reason, the first keystroke is "lost" after a
  230. X    file transfer is complete or after starting data logging.
  231. X
  232. XFuture directions:
  233. X
  234. X    The virtual screen routines need a lot of work.  The most commonly
  235. X    used escape sequences (known to terminfo) will be processed.
  236. X
  237. X     I plan to have an option at compile time to have the virtual screen
  238. X    buffer held on disk (v7) or in shared memory (SVR2).
  239. X    
  240. X    The input routine is designed so it could be a standalone program
  241. X    that gets called from pcomm.  I plan to have an option at compile
  242. X    time to have input() compiled into pcomm or as a separate program.
  243. X
  244. X
  245. XEmmet P. Gray                US Army, HQ III Corps & Fort Hood
  246. X...!ihnp4!uiucuxc!fthood!egray        Attn: AFZF-DE-ENV
  247. X                    Directorate of Engineering & Housing
  248. X                    Environmental Management Office
  249. X                    Fort Hood, TX 76544-5057
  250. SHAR_EOF
  251. if test 7859 -ne "`wc -c < 'Readme'`"
  252. then
  253.     echo shar: "error transmitting 'Readme'" '(should have been 7859 characters)'
  254. fi
  255. fi
  256. echo shar: "extracting 'Release.notes'" '(853 characters)'
  257. if test -f 'Release.notes'
  258. then
  259.     echo shar: "will not over-write existing file 'Release.notes'"
  260. else
  261. sed 's/^X//' << \SHAR_EOF > 'Release.notes'
  262. X
  263. X                 Pcomm  version 1.0
  264. X
  265. XThings that have changed:
  266. X
  267. X    I've added a bunch of parameters to the pcomm.param and pcomm.modem
  268. X    files, so the files used with the beta release won't work with the
  269. X    1.0 release.
  270. X
  271. X    Pcomm will attempt to determine if the modem has synchronized at
  272. X    a baud rate different that what is expected, and make changes to
  273. X    the line settings as appropriate.
  274. X
  275. X    The quit and interrupt signals are now ignored.
  276. X    
  277. X    All of the file transfer protocols are now functional.
  278. X
  279. X    The directory search order used to find the support files has been
  280. X    changed slightly
  281. X
  282. XThings left to do:
  283. X
  284. X    Work on the virtual screen routines.
  285. X
  286. XHave fun...
  287. X
  288. XEmmet P. Gray                US Army, HQ III Corps & Fort Hood
  289. X...!ihnp4!uiucuxc!fthood!egray        Attn: AFZF-DE-ENV
  290. X                    Directorate of Engineering & Housing
  291. X                    Environmental Management Office
  292. X                    Fort Hood, TX 76544-5057
  293. SHAR_EOF
  294. if test 853 -ne "`wc -c < 'Release.notes'`"
  295. then
  296.     echo shar: "error transmitting 'Release.notes'" '(should have been 853 characters)'
  297. fi
  298. fi
  299. echo shar: "extracting 'Doc'" '(32879 characters)'
  300. if test -f 'Doc'
  301. then
  302.     echo shar: "will not over-write existing file 'Doc'"
  303. else
  304. sed 's/^X//' << \SHAR_EOF > 'Doc'
  305. X
  306. X
  307. X
  308. X
  309. X
  310. X
  311. X
  312. X
  313. X
  314. X
  315. X          PPPPPP    CCCC    OOOO    MM   MM   MM   MM
  316. X          P    P   C       O    O   M M M M   M M M M
  317. X          PPPPPP   C       O    O   M  M  M   M  M  M
  318. X          P       C       O    O   M     M   M     M
  319. X          P        CCCC    OOOO    M     M   M     M
  320. X
  321. X
  322. X
  323. X
  324. X
  325. X
  326. X
  327. X
  328. X                Pcomm Reference Manual
  329. X
  330. X                 version 1.0
  331. X
  332. X
  333. X
  334. X
  335. X                  written by
  336. X
  337. X                 Emmet P. Gray
  338. X            ...!ihnp4!uiucuxc!fthood!egray
  339. X
  340. X
  341. X
  342. X
  343. X
  344. X
  345. X    Pcomm is a public domain telecommunications program for Unix that
  346. X    is designed to operate similar to the MSDOS program, ProComm.
  347. X    ProComm (TM) is copyrighted by Datastorm Technologies, Inc.  This
  348. X    is a completely new program and contains no ProComm source code.
  349. X    This is not a Datastorm product.
  350. X
  351. X
  352. X                  Table of Contents
  353. X
  354. X
  355. X           1. INTRODUCTION .................... 3
  356. X           1.1 Requirements ................... 3
  357. X           1.2 Support files .................. 3
  358. X
  359. X           2. RUNNING PCOMM ................... 4
  360. X           2.1 Hot key ........................ 4
  361. X           2.2 Status line .................... 4
  362. X           2.3 Help screen .................... 5
  363. X           2.4 Exit pcomm ..................... 5
  364. X
  365. X           3. SETUP SCREENS ................... 6
  366. X           3.1 Prompting ...................... 6
  367. X           3.2 TTY setup ...................... 7
  368. X           3.3 Modem setup .................... 8
  369. X           3.4 Terminal setup ................. 9
  370. X           3.5 General setup .................. 10
  371. X           3.6 ASCII transfer setup ........... 11
  372. X
  373. X           4. MAJOR FUNCTIONS ................. 13
  374. X           4.1 Dialing directory .............. 13
  375. X           4.2 Redial ......................... 15
  376. X           4.3 Keyboard macros ................ 15
  377. X           4.4 Line settings .................. 15
  378. X           4.5 Exit pcomm ..................... 16
  379. X           4.6 Unix gateway ................... 16
  380. X
  381. X           5. UTILITY FUNCTIONS ............... 17
  382. X           5.1 Program information ............ 17
  383. X           5.2 Setup screen ................... 17
  384. X           5.3 Change directory ............... 17
  385. X           5.4 Clear screen ................... 17
  386. X           5.5 Toggle duplex .................. 17
  387. X           5.6 Hangup the phone ............... 17
  388. X           5.7 Printer logging ................ 18
  389. X           5.8 Toggle CR - CR/LF .............. 18
  390. X           5.9 Break .......................... 18
  391. X
  392. X           6. FILE FUNCTIONS .................. 19
  393. X           6.1 Send files ..................... 19
  394. X           6.2 Receive files .................. 20
  395. X           6.3 Directory ...................... 20
  396. X           6.4 Screen dump .................... 21
  397. X           6.5 Start data logging ............. 21
  398. X           6.6 Toggle logging ................. 21
  399. X
  400. X           7. DIALING WINDOW .................. 22
  401. X
  402. X1. INTRODUCTION
  403. X
  404. X    Pcomm is a public domain, menu driven, telecommunication program
  405. X    designed to provide the same "ease of use" as similar programs
  406. X    available in MSDOS.  Some of its features are:
  407. X
  408. X        o+ Large dialing directory
  409. X        o+ Automatic redial feature
  410. X        o+ Supports several file transfer protocols
  411. X        o+ Data logging (log of the terminal session)
  412. X        o+ Printer logging
  413. X        o+ Screen dump
  414. X        o+ User customization
  415. X
  416. X    Pcomm does not emulate any particular terminal.  Whatever terminal
  417. X    you're on, is what the remote system "sees".
  418. X
  419. X1.1 Requirements
  420. X
  421. X    Pcomm will not run on terminals with a screen size of less than
  422. X    80 columns by 24 lines or on terminals that lack cursor movement
  423. X    capabilities.  For terminals without arrow keys, use the letter "U"
  424. X    in place of "up arrow" and the letter "N" in place of "down arrow".
  425. X
  426. X1.2 Support files
  427. X
  428. X    Pcomm uses three support files, namely:
  429. X
  430. X        pcomm.dial_dir    the dialing directory
  431. X        pcomm.modem    the modem/tty database
  432. X        pcomm.param    the start-up default parameters
  433. X
  434. X    There is a default directory (typically "/usr/local/lib/pcomm")
  435. X    where the "standard" support files live.  Since the average user 
  436. X    would not have write permission on these files, it's assumed that
  437. X    you'll copy these standard files to your own directory and edit
  438. X    them to suit your needs.
  439. X
  440. X    Pcomm can use the environmental variable "PCOMM" to search for
  441. X    these "private" support files.  If used, the variable must contain
  442. X    the path to the directory containing the files.
  443. X
  444. X    The following directories are searched to find the support files:
  445. X
  446. X        o+ directory given with the "-d" option
  447. X        o+ directory in the PCOMM environmental variable
  448. X        o+ the current working directory
  449. X        o+ the global default directory
  450. X
  451. X2. RUNNING PCOMM
  452. X
  453. X    Pcomm has the following command line syntax.
  454. X
  455. X        pcomm [-d directory] [-f index]
  456. X
  457. X    The "-d" option allows you to specify an additional path to be used
  458. X    when searching for the pcomm support files.
  459. X
  460. X    The "-f" option is used to specify automatic dialing of an entry in
  461. X    the dialing directory.  The "index" field in the dialing directory
  462. X    (described later) is checked against the string given on the command
  463. X    line.  If a match is found, that entry is automatically dialed.
  464. X
  465. X2.1 Hot key
  466. X
  467. X    Pcomm uses a "hot key" to precede each command.  (The value of the
  468. X    hot key is a user tunable parameter, but for the purpose of this
  469. X    document we'll assume the hot key is defined as control-A).
  470. X
  471. X    The hot key is used to put pcomm in the command mode.  For example,
  472. X    to get the help screen, you'd type control-A (to get to the command
  473. X    mode) then the number 0 (to display the help screen).  When a command
  474. X    is completed, pcomm returns to the terminal mode.
  475. X
  476. X    NOTE:  While in the command mode, the communications with the remote
  477. X    system is temporarily suspended.
  478. X
  479. X2.2 Status line
  480. X
  481. X    Whenever pcomm is in the command mode (or is not currently connected
  482. X    to a remote) a status line is displayed at the bottom of the screen.
  483. X    A typical status line might look like this:
  484. X
  485. X+-----------------------------------------------------------------------------+
  486. X|  ^A-0 HELP   | No TTY | FDX |  1200 E71 | LOG OFF | PTR OFF | CR    | CR    |
  487. X+-----------------------------------------------------------------------------+
  488. X
  489. X    The eight fields of the status line are:
  490. X
  491. X        o+ help screen command (or a temporary message)
  492. X        o+ name of the tty device in use
  493. X        o+ duplex mode (FDX = full duplex, HDX = half duplex)
  494. X        o+ current line settings
  495. X        o+ status of data logging option
  496. X        o+ status of printer logging option
  497. X        o+ incoming CR translation
  498. X        o+ outgoing CR translation
  499. X
  500. X
  501. X2.3 Help screen
  502. X
  503. X    The help screen gives a brief review of all the available commands.
  504. X    To access the help screen type ^A and '0' (zero).  The typical help
  505. X    screen would look like this:
  506. X
  507. X+-----------------------------------------------------------------------------+
  508. X|                 P C O M M     H E L P                  |
  509. X|-----------------------------------------------------------------------------|
  510. X|                                          |
  511. X|       Major Functions        Utility Functions     File Functions       |
  512. X|                                          |
  513. X| Dialing Directory .  ^A-D  Program Info .....  ^A-I  Send files ....  ^A-up |
  514. X| Auto Redial .......  ^A-R  Setup Screen .....  ^A-S  Receive files .  ^A-dn |
  515. X| Keyboard Macros ...  ^A-M  Change Directory .  ^A-B  Directory .....  ^A-F  |
  516. X| Line Settings .....  ^A-P  Clear Screen .....  ^A-C  Screen Dump ...  ^A-G  |
  517. X| Exit Pcomm ........  ^A-X  Toggle Duplex ....  ^A-E  Start Data Log.  ^A-1  |
  518. X| Unix Gateway ......  ^A-4  Hangup Phone .....  ^A-H  Toggle Log ....  ^A-2  |
  519. X|                 Printer On/Off ...  ^A-L                  |
  520. X|                 Toggle CR/CR-LF ..  ^A-3                  |
  521. X|                 Break Key ........  ^A-7                  |
  522. X|                                          |
  523. X+-------------------------- Press any key to continue ------------------------+
  524. X
  525. X2.4 Exit pcomm
  526. X
  527. X    To exit pcomm, you'd type ^A and 'x' to access the exit window.
  528. X
  529. X    +-- Exit -----------------------+
  530. X    |                |
  531. X    |   Exit to Unix? (y/n): _    |
  532. X    |                |
  533. X    +-------------------------------+
  534. X
  535. X    To exit, you'd press the letter 'y' (carriage return not required).
  536. X
  537. X3. SETUP SCREENS
  538. X
  539. X    Pcomm allows you to change many of the default parameters.  The setup
  540. X    screen is accessed by typing ^A and 's'.  The following screen is
  541. X    typical and shows the sub-menu choices:
  542. X
  543. X    ----------------------- Setup Menu ----------------------------
  544. X
  545. X                1) TTY Setup
  546. X                2) Modem Setup
  547. X                3) Terminal Setup
  548. X                4) General Setup
  549. X                5) ASCII Transfer Setup
  550. X                S) Save setup to disk
  551. X
  552. X    ---------------------------------------------------------------
  553. X    OPTION ==> _                      Press ESC to exit
  554. X    
  555. X    To select one of the sub-menu choices, you'd type the number (or
  556. X    letter) at the "OPTION ==>" prompt.  To exit from a sub-menu and
  557. X    return to this setup menu screen, you'd press the escape key.
  558. X
  559. X    Changes made affect the current pcomm session only.  To make the
  560. X    changes become the default, you'd select the 's' option.
  561. X
  562. X3.1 Prompting
  563. X
  564. X    There are several different types of prompts used in the setup
  565. X    screens.  The prompts use the bottom two lines on the display for
  566. X    user input and to give more information on what is being asked.
  567. X    Pcomm will beep at any illegal input.  The escape key 'ESC' will
  568. X    abort any prompt.  The prompt types are:
  569. X
  570. X        o+ Character prompt.  Asks you to input a single character.
  571. X
  572. X        o+ String prompt.  Asks you to input a word or group of
  573. X        characters.
  574. X
  575. X        o+ Numeric prompt.  Asks you for a number.
  576. X
  577. X        o+ Menu prompt.  Shows a selection and allows you to to
  578. X        choose the current selection by pressing the carriage return
  579. X        or change the selection by pressing the space bar.
  580. X
  581. X3.2 TTY setup
  582. X
  583. X    The TTY setup screen contains the list of devices (ports) that pcomm
  584. X    is allowed to use, and what is attached to each port.  A typical TTY
  585. X    setup screen might look like this:
  586. X
  587. X    ------------------------- TTY Setup ---------------------------
  588. X
  589. X        TTY name    Modem name    Maximum baud
  590. X
  591. X        1) tty10    HAYES        1200
  592. X        2) tty11    HAYES        2400
  593. X        3) tty12    DIRECT        9600
  594. X        4)                0
  595. X        5)                0
  596. X        6)                0
  597. X        7)                0
  598. X        8)                0
  599. X        9)                0
  600. X        10)                    0
  601. X
  602. X        11) Add a TTY entry
  603. X        12) Delete a TTY entry
  604. X
  605. X    ---------------------------------------------------------------
  606. X    OPTION ==> _                    Press ESC to return
  607. X
  608. X    You may edit an entry by typing the entry number at the prompt.
  609. X    To add an entry, you'd type '11' at the prompt, etc.
  610. X
  611. X    The tty setup fields are:
  612. X
  613. X        1) The tty name.  This is the name of the serial port that
  614. X        pcomm will be allowed to use.  Notice that the path component
  615. X        of the name, "/dev/" is not used.
  616. X
  617. X        2) The modem name.  This a keyword that is used later to link
  618. X        the modem database with the tty database.  The name could be
  619. X        any combination of letters or numbers (both upper and lower
  620. X        case).
  621. X
  622. X    NOTE:  All hard-wired ports (ports without modems attached)
  623. X    *must* use the word "DIRECT" for the modem name.
  624. X
  625. X        3) The maximum baud rate is highest rating of the modem (or
  626. X        the connected baud rate of hard-wired ports).  The baud rate
  627. X        is selected from a "menu prompt".
  628. X
  629. X3.3 Modem setup
  630. X
  631. X    The modem setup contains the commands to make the modem dial, hangup
  632. X    the phone, etc.  A typical modem setup screen might look like this:
  633. X
  634. X    -------------------------- Modem Setup --------------------------
  635. X
  636. X        1) Modem name ............. HAYES
  637. X
  638. X        2) Modem init string ...... ATS7=45S11=70!
  639. X        3) Dialing command ........ ATDT
  640. X        4) Dialing cmd suffix ..... !
  641. X        5) Hangup string .......... ~~+++~~ATH0!
  642. X        6) 300 baud connect ....... CONNECT!
  643. X        7) 1200 baud connect ...... CONNECT 1200
  644. X        8) 2400 baud connect ...... CONNECT 2400
  645. X        9) 4800 baud connect ......
  646. X        10) 9600 baud connect .....
  647. X        11) 19200 baud connect ....
  648. X        12) No connect string 1 ... BUSY
  649. X        13) No connect string 2 ... VOICE
  650. X        14) No connect string 3 ... NO CARRIER
  651. X        15) No connect string 4 ...
  652. X
  653. X    ---------------------------------------------------------------
  654. X    OPTION ==> _                    Press ESC to return
  655. X
  656. X    The fields of the modem setup are:
  657. X
  658. X        1) Modem name.  This is the keyword that links the modem
  659. X        database with the tty database.  A menu prompt is used to
  660. X        select the modem name (and the remaining parameters that go
  661. X        with it).
  662. X
  663. X        2) Modem initialization string.  This is sent to the modem
  664. X        whenever the port is selected.  Consult your modem manual for
  665. X        the codes to be used.  Notice the use of the "!" character,
  666. X        this is the "character synonym" for the carriage return.
  667. X
  668. X    NOTE: See section 3.5 for the complete list of character synonyms.
  669. X
  670. X        3) Dialing command.  The first part of the command to make
  671. X        the modem dial.  It is assumed that the phone number will
  672. X        immediately follow.
  673. X
  674. X        4) Dialing command suffix.  The last part of the command to
  675. X        make the modem dial.  Typically this would be the carriage
  676. X        return "character synonym".
  677. X
  678. X        5) Hangup string.  The command to make the modem hangup the
  679. X        phone.  The character synonym for a 1 second pause is the
  680. X        tilde "~" character.
  681. X
  682. X        6-11) Connect strings.  The return message when the modem is
  683. X        connected to the remote.  If different messages are returned
  684. X        depending on which baud rate is selected, they should be
  685. X        specified.
  686. X
  687. X    NOTE: If two connect strings are similar, (one is contained entirely
  688. X    in another) then it is possible that the return code from the modem
  689. X    will not match the correct connect string.  To prevent this from
  690. X    happening, use the command synonym for the carriage return to
  691. X    terminate the shorter connect string.
  692. X
  693. X        12-15) No connect strings.  The messages returned by the
  694. X        modem when no connection is made.
  695. X
  696. X3.4 Terminal setup
  697. X
  698. X    The terminal setup allows you to define the hot key and the mapping
  699. X    of the end-of-line characters.  A typical terminal setup menu would
  700. X    look like this:
  701. X
  702. X    ---------------------- Terminal Setup --------------------------
  703. X
  704. X            1) Hot key ................ 1
  705. X            2) ASCII version of hot ... ^A
  706. X
  707. X            3) Duplex ................. FULL
  708. X            4) Flow control ........... XON/XOFF
  709. X            5) CR translation (in) .... CR
  710. X            6) CR translation (out) ... CR
  711. X
  712. X    ---------------------------------------------------------------
  713. X    OPTION ==> _                    Press ESC to return
  714. X
  715. X    The fields in the terminal setup are:
  716. X
  717. X        1) Hot key.  This is the decimal code for the user definable
  718. X        hot key.  Consult an ASCII/decimal conversion chart for the
  719. X        decimal values of other characters.
  720. X
  721. X        2) ASCII version of hot key.  This is the printable version
  722. X        of the hot key used by pcomm in the help screen and status
  723. X        line.
  724. X
  725. X        3) Duplex.  A menu prompt is shown to select between FULL
  726. X        duplex and HALF duplex.  In the half duplex mode, characters
  727. X        sent to the remote system are also sent to the the screen.
  728. X        (The duplex mode can also be change "on the fly" by the
  729. X        ^A-E command.)
  730. X
  731. X    NOTE: Due to a technical limitation in pcomm, data logging and
  732. X    print logging will not work correctly in the half duplex mode.
  733. X
  734. X        4) Flow control.  A menu prompt is shown to select between
  735. X        XON/XOFF flow control and NONE.  The flow control selected
  736. X        here is only used during the terminal session, not during
  737. X        file transfers.
  738. X
  739. X        5-6) CR translations.  The end-of-line characters for both
  740. X        incoming and outgoing carriage returns can be altered to suit
  741. X        the remote system's needs.  A menu prompt provides the
  742. X        following choices:
  743. X    
  744. X            o+ CR (no translation)
  745. X            o+ CR/NL translate CR to CR/NL
  746. X
  747. X        The incoming CR translation can also be changed "on the fly"
  748. X        with the ^A-3 command.
  749. X
  750. X3.5 General setup
  751. X
  752. X    The general setup allows you to define the character synonyms and
  753. X    the default files used by the screen dump and other features.  A
  754. X    typical general setup screen might look like this:
  755. X
  756. X    ------------------------ General Setup -----------------------
  757. X
  758. X            1) Default log file ....... pcomm.log
  759. X            2) Screen dump file ....... pcomm.dump
  760. X
  761. X            3) Strip high bit  ........ YES
  762. X
  763. X            4) Pause character ........ ~
  764. X            5) CR character ........... !
  765. X            6) CTRL character ......... ^
  766. X            7) ESC character .......... |
  767. X
  768. X            8) Aborted downloads ...... KEEP
  769. X
  770. X            9) Connect delay time ..... 35
  771. X            10) Pause between redials . 5
  772. X
  773. X    ---------------------------------------------------------------
  774. X    OPTION ==> _                    Press ESC to return
  775. X
  776. X    The general setup fields are:
  777. X
  778. X        1) Default log file.  The file name to be used as the default
  779. X        when the data logging is actived (^A-1).  You can override
  780. X        this default at run time.
  781. X
  782. X        2) Screen dump file.  The file name to be used for the screen
  783. X        dump command (^A-G).
  784. X
  785. X        3) Strip high bit.  Should pcomm strip the eighth bit on
  786. X        incoming and outgoing characters?  A menu prompts allows you
  787. X        to select YES or NO.  This feature is not used during file
  788. X        transfers.
  789. X
  790. X        4-7) Character synonyms.  These are symbols that pcomm uses
  791. X        to translate special characters to the their real values
  792. X        prior to sending them to the modem.  Synonyms are useful for
  793. X        terminals and editors that balk at special characters.
  794. X
  795. X        8) Aborted downloads.  When a download aborts (fails), should
  796. X        the partially completed file be kept?  The menu prompt allows
  797. X        "KEEP" or "DELETE".
  798. X
  799. X        9) Connect delay time.  The number of seconds pcomm will wait
  800. X        for the modem to return a status code.
  801. X
  802. X        10) Pause between retries.  The number of seconds to wait
  803. X        before pcomm tries to call the number again.
  804. X
  805. X3.6 ASCII transfer setup
  806. X
  807. X    This setup screen allows you to select options to be used for ASCII
  808. X    uploads and download.  A typical ASCII transfer setup would look
  809. X    like this:
  810. X
  811. X    ---------------------- ASCII Transfer Setup ---------------------
  812. X
  813. X                ASCII UPLOAD
  814. X
  815. X            1) Echo locally ........... NO
  816. X            2) Expand blank lines ..... NO
  817. X            3) CR delay (ms) .......... 0
  818. X            4) Pace the output ........ NO
  819. X            5) CR translation ......... NONE
  820. X            6) LF translation ......... NONE
  821. X
  822. X                ASCII DOWNLOAD
  823. X
  824. X            7) Transfer timeout ....... 5
  825. X            8) CR translation ......... STRIP
  826. X            9) LF translation ......... NONE
  827. X
  828. X    ---------------------------------------------------------------
  829. X    OPTION ==> _                    Press ESC to return
  830. X
  831. X    The fields are:
  832. X
  833. X        1) Echo locally.  This is similar to the duplex option in
  834. X        that it copies outgoing characters to the screen.  The options
  835. X        are YES and NO.
  836. X
  837. X        2) Expand blank lines.  Should a blank line (NL alone) be
  838. X        expanded to a space and NL?  Some BBS systems use a blank
  839. X        line to signal the end of a ASCII upload.  The options are
  840. X        YES and NO.
  841. X
  842. X        3) CR delay.  The delay in milliseconds to be used when
  843. X        sending a CR.  The menu prompt limits the choice to 0, 100,
  844. X        or 150.
  845. X
  846. X        4) Pace output.  Should each character sent be delayed?  Very
  847. X        old BBS systems may require this.  The choice is YES or NO.
  848. X
  849. X        5) CR translation.  The menu prompt provides the following
  850. X        choices for upload translations:
  851. X
  852. X            o+ NONE (no translation)
  853. X            o+ ADD NL translate CR to CR/NL.
  854. X            o+ STRIP remove the CR character
  855. X
  856. X        6) LF translation. Same as above except the choices are:
  857. X        
  858. X            o+ NONE (no translation)
  859. X            o+ ADD CR translate NL to CR/NL.
  860. X            o+ STRIP remove the NL character
  861. X
  862. X        7) Transfer timeout.  The number of seconds to be used to
  863. X        determine the end of an ASCII download.  You can halt the
  864. X        transfer before the timer goes off by hitting the ESC key.
  865. X
  866. X        8-9) Same as 5) and 6) above, except for downloading.
  867. X
  868. X4. MAJOR FUNCTIONS
  869. X
  870. X    When pcomm is invoked without the "-f" command line option, you are
  871. X    placed in the terminal mode with a blank screen and a status line.
  872. X    However, since pcomm hasn't yet selected a serial port to use,
  873. X    characters typed at the blank screen are ignored.
  874. X
  875. X    Normally the first command you'd use is ^A-D to bring up the dialing
  876. X    directory menu.
  877. X
  878. X4.1 Dialing directory
  879. X
  880. X    To dial another system, you'd type ^A-D to access the dialing
  881. X    directory menu, then enter the entry number at the prompt.
  882. X
  883. X    The entry number could be preceded by a special long distance dialing
  884. X    code such as "#5" in lieu of "5" alone.  Long distance codes could
  885. X    contain access numbers such as those that MCI and Sprint require.
  886. X
  887. X    A typical dialing directory would look like this:
  888. X
  889. X+----------------------------------------------------------------------------+
  890. X|            D I A L I N G    D I R E C T O R Y             |
  891. X|----------------------------------------------------------------------------|
  892. X|      Name             Number       Baud P D S Dpx  Index/tty         |
  893. X|  1- Abbey Road    1 (512) 590-6036   2400-N-8-1  F             |
  894. X|  2- Tel-Med-Com        526-8686   1200-E-7-1  F             |
  895. X|  3- C Board        1 (619) 722-8724   2400-N-8-1  F             |
  896. X|  4- Crest        1 (213) 471-2518   2400-N-8-1  F  crest             |
  897. X|  5- Last Chance    1 (219) 762-8411   2400-E-7-1  F             |
  898. X|  6- Killer        1 (214) 827-1994   1200-E-7-1  F             |
  899. X|  7- System A (direct)               9600-N-8-1  F  tty12             |
  900. X|  8-                       1200-E-7-1  F             |
  901. X|  9-                       1200-E-7-1  F             |
  902. X| 10-                       1200-E-7-1  F             |
  903. X|                                         |
  904. X|   ==> _    R Revise    M Manual Dialing    Entry to Dial         |
  905. X|        P LD Codes    D Delete Entry        <cr> Scroll Down     |
  906. X|        up/dn Page    L Print Entries        ESC Exit         |
  907. X|                                         |
  908. X|   LD Codes Active: @ #                             |
  909. X|                                         |
  910. X+----------------------------------------------------------------------------+
  911. X
  912. X    The fields of the dialing directory are:
  913. X
  914. X        o+ Name.  The name of the remote system.
  915. X
  916. X        o+ Number.  The telephone number to the remote system.
  917. X
  918. X    NOTE: The "(", ")", "-", and space character are for just for looks,
  919. X    they don't get sent to the modem.
  920. X
  921. X        o+ Line settings.  The communications settings to be used
  922. X        when dialing that entry.  The range of values are:
  923. X
  924. X            Baud    Parity       Data bits  Stop bits
  925. X
  926. X            300    N - none    7    1
  927. X            1200    E - even    8    2
  928. X            2400    O - odd
  929. X            4800
  930. X            9600
  931. X            19200
  932. X
  933. X        o+ Duplex.  The duplex mode.  Either "F" for full or "H"
  934. X        for half.
  935. X
  936. X        o+ Index.  The string to be used to select this entry with
  937. X        the "-f" command line option.  This field is also used to
  938. X        specify a particular tty for the entry.
  939. X
  940. X    NOTE:  On all hard-wired ports, the index field must be set to the
  941. X    name of the port.  For example, if tty12 is a hard-wired port to
  942. X    "System A", then the dialing directory entry for "System A" would
  943. X    have "tty12" in the index field.
  944. X
  945. X    The commands at the dialing directory prompt are:
  946. X
  947. X        R) Revise (or add) a dialing directory entry or long distance
  948. X        dialing code.  Prompts you to save the changes to disk.
  949. X
  950. X        P) Print (display) the long distance dialing codes.
  951. X
  952. X        up/dn) Scroll the dialing directory up or down 10 lines.
  953. X        Use the up and down arrow keys to access this feature.
  954. X
  955. X        M) Manual dial. Prompts you for a phone number rather than
  956. X        using a number already in the dialing directory.
  957. X
  958. X        D) Delete an entry or a range of entries.  Prompts you to
  959. X        save the changes to disk.
  960. X
  961. X        L) Print.  Send the dialing directory to the printer
  962. X        or a file of your choice.
  963. X
  964. X        1-100) Entry number.  Dial the phone for that entry number.
  965. X
  966. X    NOTE:  To access the port directly without dialing (perhaps to send
  967. X    the dial codes yourself), select an empty entry or enter a single
  968. X    space character at the manual dial option.
  969. X
  970. X        <cr> Carriage return.  Scroll the dialing directory down one
  971. X        line.
  972. X
  973. X4.2 Redial
  974. X
  975. X    The redial feature is a misnomer, it really is a queuing system that
  976. X    allows pcomm to dial several numbers in a cycle until one of them
  977. X    answers.
  978. X
  979. X    When you invoke the redial command with ^A-R, you are prompted for a
  980. X    list of dialing directory numbers.  (You may also prepend a long
  981. X    distance code to the entry number).
  982. X
  983. X     +-- Redial Queue --------------------------------------------------+
  984. X     |                                        |
  985. X     |   Directory Entry Number(s): _                    |
  986. X     |                                    |
  987. X     |            (CR for previous numbers)            |
  988. X     +------------------------------------------------------------------+
  989. X
  990. X    To redial the previous number, press a carriage return alone at
  991. X    the prompt.
  992. X
  993. X4.3 Keyboard macros.
  994. X
  995. X    Keyboard macros are not supported at this time.
  996. X
  997. X4.4 Line settings.
  998. X
  999. X    The line settings menu is invoked by ^A-P.  A typical line settings
  1000. X    menu would look like this:
  1001. X
  1002. X        +-----------------------------------------------+
  1003. X        |        Line Settings            |
  1004. X        |-----------------------------------------------|
  1005. X        |                        |
  1006. X        |    Current Settings:  1200,E,7,1        |
  1007. X        |                        |
  1008. X        |    1)     300,E,7,1    7)     300,N,8,1    |
  1009. X        |    2)    1200,E,7,1    8)    1200,N,8,1    |
  1010. X        |    3)    2400,E,7,1    9)    2400,N,8,1    |
  1011. X        |    4)    4800,E,7,1    10)    4800,N,8,1    |
  1012. X        |    5)    9600,E,7,1    11)    9600,N,8,1    |
  1013. X        |    6)   19200,E,7,1    12)    19200,N,8,1    |
  1014. X        |                        |
  1015. X        |   Parity    Data Bits    Stop Bits    |
  1016. X        |   13) Odd    14) 7 bits    16) 1 bit    |
  1017. X        |        15) 8 bits    17) 2 bits    |
  1018. X        |                        |
  1019. X        |   18) Save Changes    YOUR CHOICE: _        |
  1020. X        |                        |
  1021. X        +------------- Press ESC to return -------------+
  1022. X
  1023. X    After dialing a remote, the line settings in the dialing directory
  1024. X    entry are automatically used.  Therefore the line settings menu is
  1025. X    used to adjust the values or to select the default parameters.  You
  1026. X    can make the current setting the default by selecting the "Save
  1027. X    Changes" option.
  1028. X
  1029. X    The current settings are also displayed in the status line.
  1030. X
  1031. X    NOTE: During file transfers, certain parameters (namely the data
  1032. X    bits and parity) will be temporarily promoted.
  1033. X
  1034. X4.5 Exit pcomm
  1035. X
  1036. X    To exit pcomm, you'd type ^A-X.
  1037. X
  1038. X4.6 Unix gateway.
  1039. X
  1040. X    To temporarily suspend pcomm and spawn a Unix shell, you'd type
  1041. X    ^A-4.  To return to pcomm, you'd exit the shell normally, typically
  1042. X    with "^D" or "exit".
  1043. X
  1044. X5. UTILITY FUNCTIONS
  1045. X
  1046. X    The following commands perform secondary functions.
  1047. X
  1048. X5.1 Program information
  1049. X
  1050. X    To display the opening information screen, you'd type ^A-I.  Press
  1051. X    any key to return to the terminal mode.
  1052. X
  1053. X5.2 Setup screen
  1054. X
  1055. X    The setup screens are described in detail in section 3 of this manual.
  1056. X
  1057. X5.3 Change directory
  1058. X
  1059. X    To change the current working directory while still inside pcomm,
  1060. X    you'd type ^A-B.  A screen similar to the following would appear:
  1061. X
  1062. X    +-- Change directory -------------------------------------------+
  1063. X    |                                |
  1064. X    |   Current directory: /usr/egray                |
  1065. X    |   New directory: _                        |
  1066. X    |                                |
  1067. X    +---------------------------------------------------------------+
  1068. X
  1069. X    Abbrievations known to the shell are acceptable, for example the
  1070. X    "~" character would be translated to the home directory in the csh
  1071. X    or ksh shell.
  1072. X
  1073. X5.4 Clear screen.
  1074. X
  1075. X    To clear the local screen and home the cursor, you'd type ^A-C.
  1076. X
  1077. X    NOTE:  The remote system may not "know" the screen has been cleared,
  1078. X    and may make assumptions about the screen that are incorrect.
  1079. X    
  1080. X5.5 Toggle Duplex.
  1081. X
  1082. X    The ^A-E command changes the duplex mode from FULL to HALF, or from
  1083. X    HALF to FULL.  The status line shows the current settings.
  1084. X
  1085. X5.6 Hangup the phone.
  1086. X
  1087. X    To hangup the phone, you'd type ^A-H.  The word "disconnecting" will
  1088. X    briefly show in the status line.
  1089. X
  1090. X    NOTE: The hangup string is sent to the modem and then the DTR is
  1091. X    dropped on the line.
  1092. X
  1093. X5.7 Printer logging.
  1094. X
  1095. X    The ^A-L command toggles the printer logging on or off.  The current
  1096. X    settings are displayed in the status line.
  1097. X
  1098. X    NOTE: Since all printing goes to the normal Unix print spool program,
  1099. X    the characters will not print on the printer as they appear on the
  1100. X    screen.  The printing will actually begin when the printer logging
  1101. X    is turned *off* and the complete print job is sent to the spool.
  1102. X
  1103. X5.8 Toggle CR - CR/LF.
  1104. X
  1105. X    The ^A-3 command toggles the incoming line termination characters
  1106. X    between CR and CR/LF.  The status line show the current settings (in
  1107. X    the next to the last field).
  1108. X
  1109. X5.9 Break.
  1110. X
  1111. X    A ^A-7 sends a modem break to the remote system.  The word "break"
  1112. X    is (very) briefly displayed on the status line.
  1113. X
  1114. X    NOTE: This not the same as the break key on the keyboard (we don't
  1115. X    want to send a break to the local system, we want to sent it to
  1116. X    the *remote*).
  1117. X
  1118. X6. FILE FUNCTIONS
  1119. X
  1120. X    One of the most important features of a telecommunication program is
  1121. X    the ability to transfer files.  The following file transfer protocols
  1122. X    are implemented at this time:
  1123. X
  1124. X    protocol    packet        error        multiple
  1125. X    name        size        detection    files?
  1126. X    ---------    --------    ------------    -----
  1127. X    
  1128. X    xmodem        128        checksum/CRC    no
  1129. X    xmodem-1k    128/1024    checksum/CRC    no
  1130. X    modem7        128        checksum    yes*1
  1131. X    ymodem        128/1024    CRC        yes*2
  1132. X    ymodem-g    128/1024    none*3        yes
  1133. X    ASCII        none        none        no
  1134. X
  1135. X    Notes:    1 CP/M style file name
  1136. X        2 MSDOS style file name and file size
  1137. X        3 Not needed!
  1138. X
  1139. X6.1 Send files.
  1140. X
  1141. X    To send a file to the remote, you'd first instruct the remote system
  1142. X    to receive the file, then type ^A-"up arrow".  The following screen
  1143. X    would appear:
  1144. X
  1145. X                    +----- Upload -----+
  1146. X                    |           |
  1147. X                    |  1) xmodem       |
  1148. X                    |  2) xmodem-1k    |
  1149. X                    |  3) modem7       |
  1150. X                    |  4) ymodem       |
  1151. X                    |  5) ymodem-g     |
  1152. X                    |  6) ASCII       |
  1153. X                    |           |
  1154. X                    |           |
  1155. X                    |           |
  1156. X                    |  ESC to Abort    |
  1157. X                    |           |
  1158. X                    |  Protocol: _     |
  1159. X                    +------------------+
  1160. X
  1161. X    You'd then select the type of protocol at the prompt, and another
  1162. X    window similar to this would appear:
  1163. X
  1164. X    +-- Send xmodem ------------------------------------------------+
  1165. X    |                                |
  1166. X    |                                |
  1167. X    |   Enter filename: _                        |
  1168. X    |                                |
  1169. X    |                                |
  1170. X    +---------------------------------------------------------------+
  1171. X
  1172. X    Now you'd type in the file name or names you'd like to send.
  1173. X    Wildcards known to the shell are acceptable.
  1174. X
  1175. X    Now the file transfer actually begins.  A status screen similar to
  1176. X    the following is displayed during the transfer:
  1177. X
  1178. X                +-------------- Uploading --------------+
  1179. X                |                    |
  1180. X                |         Protocol: xmodem        |
  1181. X                |        File name: main.c        |
  1182. X                |        File size: 4420        |
  1183. X                |  Error check method: CRC        |
  1184. X                |   Est transfer time: 0:00:50        |
  1185. X                |      Block count: 5        |
  1186. X                |    Percent complete: 11.2%        |
  1187. X                |   Bytes transferred: 640        |
  1188. X                |   Errors this block: 0        |
  1189. X                |   Total error count: 0        |
  1190. X                |     Last message: NONE        |
  1191. X                |                    |
  1192. X                +---------- Press ESC to abort ---------+
  1193. X
  1194. X    As the transfer progresses, the "block count", "percent complete",
  1195. X    and "bytes transferred" fields will be continuously updated.  If
  1196. X    errors occur the "errors this block" and "total error count" fields
  1197. X    will be updated and the "last message" field will contain a message
  1198. X    about the error.
  1199. X
  1200. X    At the end of the transfer, pcomm will beep and return to the terminal
  1201. X    mode.  If an error occurred and the transfer was aborted, you will be
  1202. X    prompted to acknowledge the error by pressing a key before returning
  1203. X    to the terminal mode.
  1204. X
  1205. X6.2 Receive files
  1206. X
  1207. X    To receive a file (or group of files) from a remote system, you'd
  1208. X    instruct the remote system first, then type ^A-"down arrow".
  1209. X    Receiving a file is basically the same as sending a file.
  1210. X
  1211. X    NOTE: Some systems do not pad the end of the file with control-Z's
  1212. X    and therefore files might grow in length when received.
  1213. X
  1214. X    NOTE: Due to a technical limitation of pcomm, characters received
  1215. X    during an ASCII download will not reappear on the screen when you
  1216. X    return to the terminal mode.
  1217. X
  1218. X6.3 Directory
  1219. X
  1220. X    To obtain a listing of a directory on the local system while still
  1221. X    running pcomm, you'd type ^A-F.  The following screen would appear:
  1222. X
  1223. X    +-- List Directory ---------------------------------------------+
  1224. X    |                                |
  1225. X    |   Current directory: /usr/egray                |
  1226. X    |   File spec (wildcards allowed): _                |
  1227. X    |                                |
  1228. X    +---------------------------------------------------------------+
  1229. X
  1230. X    Abbrievations know to the shell are valid.
  1231. X
  1232. X    NOTE: Since we're really doing a popen() to the "ls" command,
  1233. X    additional command line options are also valid.
  1234. X
  1235. X6.4 Screen dump
  1236. X
  1237. X    To dump the contents of the current screen (minus any windows showing)
  1238. X    you'd type ^A-G.  The contents of the screen are written to the file
  1239. X    specified in the general setup for this purpose.  If the file already
  1240. X    exists, the screen contents are appended to the file.  The message
  1241. X    "screen dump" will briefly appear in the status line.
  1242. X
  1243. X6.5 Start Data log
  1244. X
  1245. X    To start the data logging, or change the file used for data logging,
  1246. X    you'd type ^A-1.  The following screen would appear:
  1247. X
  1248. X    +-- Start Data Logging -----------------------------------------+
  1249. X    |                                |
  1250. X    |   Default log file: pcomm.log                    |
  1251. X    |   New log file: _                        |
  1252. X    |                                |
  1253. X    +---------------------------------------------------------------+
  1254. X
  1255. X    To keep the default file, just press a carriage return at the prompt,
  1256. X    otherwise, enter a new file name.
  1257. X
  1258. X    The status of the logging is shown in the status line.
  1259. X
  1260. X6.6 Toggle Logging
  1261. X
  1262. X    To temporarily suspend data logging or to start it again without
  1263. X    being prompted for the file name, you'd type ^A-2.
  1264. X
  1265. X    The status lines shows the current settings.
  1266. X
  1267. X7.  DIALING WINDOW
  1268. X
  1269. X    While pcomm is dialing another system, a screen similar to the
  1270. X    following is shown:
  1271. X
  1272. X    +--------------------------------------------------------------------+
  1273. X    |          D I A L I N G           W I N D O W             |
  1274. X    +--------------------------------------------------------------------+
  1275. X    |                                     |
  1276. X    |              System name: C Board                 |
  1277. X    |              Pass number: 1                     |
  1278. X    |         Elapse time this try: 4                     |
  1279. X    |        Time at start of dial: 14:53:36                 |
  1280. X    |    Time at start of this try: 14:53:37                 |
  1281. X    |           Connect delay time: 35                     |
  1282. X    |          Pause between tries: 5                     |
  1283. X    |            Index/tty:                     |
  1284. X    |           Result of last try:                     |
  1285. X    |                                     |
  1286. X    |  SPACE: Recycle    DEL: Remove from queue   E: Change delay times  |
  1287. X    |                                     |
  1288. X    +------------------------ Press ESC to abort ------------------------+
  1289. X
  1290. X    The options available during the dialing are:
  1291. X
  1292. X        SPACE) Press the space bar to stop the dialing of the current
  1293. X        entry and go on to the next entry in the queue.  If there is
  1294. X        only one entry in the queue, then that number is immediately
  1295. X        redialed.
  1296. X
  1297. X        DEL) Press the DEL key to remove the current number from the
  1298. X        queue.
  1299. X
  1300. X        E) Press the letter "E" to change the connect delay time, or
  1301. X        the pause between retries.  You will be prompted to save the
  1302. X        changes to disk.
  1303. echo shar: "36 control characters may be missing from 'Doc'"
  1304. SHAR_EOF
  1305. if test 32879 -ne "`wc -c < 'Doc'`"
  1306. then
  1307.     echo shar: "error transmitting 'Doc'" '(should have been 32879 characters)'
  1308. fi
  1309. fi
  1310. echo shar: "extracting 'Pcomm.1'" '(6287 characters)'
  1311. if test -f 'Pcomm.1'
  1312. then
  1313.     echo shar: "will not over-write existing file 'Pcomm.1'"
  1314. else
  1315. sed 's/^X//' << \SHAR_EOF > 'Pcomm.1'
  1316. X.TH PCOMM 1 local
  1317. X.SH NAME
  1318. Xpcomm \- a telecommunication program
  1319. X.SH SYNOPSIS
  1320. X.B pcomm
  1321. X[
  1322. X.B -d directory
  1323. X]
  1324. X[
  1325. X.B -f index
  1326. X]
  1327. X.SH DESCRIPTION
  1328. X.I Pcomm
  1329. Xis a telecommunication program designed to operate similar to the
  1330. Xpopular MSDOS program, ProComm.  ProComm (TM) is copyrighted by Datastorm
  1331. XTechnologies, Inc.
  1332. X.PP
  1333. XThe '-d' command line option allows the user to specify an additional
  1334. Xpath to be used when searching for the pcomm support files.
  1335. X.PP
  1336. XThe '-f' command line option is used to specify automatic dialing of an
  1337. Xentry in the dialing directory.  The 'index' field in the dialing directory
  1338. Xis checked against the string given in the command line option.  If a
  1339. Xmatch is found, that entry is automatically dialed.
  1340. X.PP
  1341. XWhenever
  1342. X.I pcomm
  1343. Xis in the command mode, a status line is displayed at the bottom of the
  1344. Xscreen.  The eight fields of the status line are:
  1345. X.PP
  1346. X.RS 5
  1347. X.nf
  1348. Xo+ help screen command
  1349. Xo+ tty name in use
  1350. Xo+ current line settings
  1351. Xo+ the duplex mode
  1352. Xo+ status of data logging
  1353. Xo+ status of printer
  1354. Xo+ incoming CR translation
  1355. Xo+ outgoing CR translation
  1356. X.fi
  1357. X.RE
  1358. X.SH COMMANDS
  1359. XThe following commands are accessible by pressing a user definable 'hot
  1360. Xkey' and the command letter.  The default 'hot key' is control-A.
  1361. X.TP
  1362. X.B ^A-0
  1363. XDisplays a summary of the available commands.
  1364. X.TP
  1365. X.B ^A-D
  1366. XDisplays the dialing directory.  From this screen, the directory
  1367. Xcan be scrolled up or down 10 lines by pressing the up or down
  1368. Xarrow keys respectively.  To select an entry to dial, just enter 
  1369. Xthe entry number at the prompt.  The following sub-commands are
  1370. Xalso available:
  1371. X.RS 5
  1372. X.TP
  1373. X.B R
  1374. XRevise or add an entry.  Prompts for entry number or long distance code
  1375. Xto revise.
  1376. X.TP
  1377. X.B D
  1378. XDelete a dialing directory entry or a range of entries.
  1379. X.TP
  1380. X.B P
  1381. XDisplay the current long distance dialing codes.
  1382. X.TP
  1383. X.B L
  1384. XSend the dialing directory to the line printer.
  1385. X.TP
  1386. X.B M
  1387. XManual dial.  Prompts for a phone number.
  1388. X.RE
  1389. X.TP
  1390. X.B ^A-R
  1391. XAutomatic redial of selected dialing directory entries.  Prompts the
  1392. Xuser for a list of directory entries to be placed in the queue.
  1393. X.TP
  1394. X.B ^A-M
  1395. XAllows the user to maintain a list of keyboard macros assigned to
  1396. Xspecific keys.  When pressed, the string assigned to that key is sent
  1397. Xto the remote system.
  1398. X.TP
  1399. X.B ^A-P
  1400. XAdjust the current communication line settings.  Displays a menu of 
  1401. Xbaud rate, parity, data bit, and stop bit choices.  Allows the new choice
  1402. Xto be saved and become the default.  The current line settings are
  1403. Xshown on the status line.
  1404. X.TP
  1405. X.B ^A-X
  1406. XExit 
  1407. X.I pcomm.
  1408. X.TP
  1409. X.B ^A-4
  1410. XSpawn a Unix shell while still communicating with the remote system.
  1411. XUses the 'native' shell as described in the SHELL environmental
  1412. Xvariable.
  1413. X.TP
  1414. X.B ^A-I
  1415. XDisplays the program information screen.
  1416. X.TP
  1417. X.B ^A-S
  1418. XDisplays a choice of setup screens.  The following sub-menus are
  1419. Xavailable:
  1420. X.RS 5 
  1421. X.TP
  1422. X.B 1
  1423. XTTY Setup.  Allows for the assignment of modem names to the ttys 
  1424. Xused for dialing.
  1425. X.TP
  1426. X.B 2
  1427. XModem Setup.  Prompts for the dialing instructions for the modem
  1428. Xnames specified in the TTY setup.
  1429. X.TP
  1430. X.B 3
  1431. XTerminal Setup.  This screen contains the 'hot key' definition and
  1432. Xcarriage return / line feed translations.
  1433. X.TP
  1434. X.B 4
  1435. XGeneral Setup.  Prompts for default log file name and the set of
  1436. Xcommand character translations.
  1437. X.TP
  1438. X.B 5
  1439. XASCII Setup.  Additional character translations allowed during ASCII
  1440. Xfile transfers.
  1441. X.TP
  1442. X.B S
  1443. XSave the changes to disk.
  1444. X.RE
  1445. X.TP
  1446. X.B ^A-B
  1447. XChanges the current working directory.
  1448. X.TP
  1449. X.B ^A-C
  1450. XClears the local screen.
  1451. X.TP
  1452. X.B ^A-E
  1453. XToggles between full duplex and half duplex mode.  The status line
  1454. Xshows the current duplex mode.
  1455. X.TP
  1456. X.B ^A-H
  1457. XHang up the phone.  Disconnects the phone, but remains in 
  1458. X.I pcomm.
  1459. X.TP
  1460. X.B ^A-L
  1461. XToggles the printer on and off.  Since the printer is accessed through
  1462. Xthe normal Unix spool program, the output is not sent to the printer
  1463. Xuntil 
  1464. X.B after
  1465. Xthis feature is turned off.
  1466. X.TP
  1467. X.B ^A-3
  1468. XToggle the line termination characters between the carriage return and
  1469. Xthe carriage return line feed pair.  This affects the terminal session
  1470. Xonly, not the file transfers.  The current settings are shown in the
  1471. Xstatus line.
  1472. X.TP
  1473. X.B ^A-7
  1474. XSend a modem break.  This is
  1475. X.B not
  1476. Xthe same as the break key on the keyboard.
  1477. X.TP
  1478. X.B ^A-up
  1479. XDisplays a menu of file transfer protocols to be used to send files 
  1480. Xto a remote system.
  1481. X.TP
  1482. X.B ^A-dn
  1483. XDisplays file transfer protocols to be used to receive files from a
  1484. Xremote system.
  1485. X.TP
  1486. X.B ^A-F
  1487. XDisplays the contents of a Unix directory.
  1488. X.TP
  1489. X.B ^A-G
  1490. XDump the contents of the screen to a specified file.  Escape
  1491. Xsequences and special characters will not be represented accurately
  1492. Xin the file.
  1493. X.TP
  1494. X.B ^A-1
  1495. XBegin data logging.  Prompts the user for the name of the file that
  1496. Xwill be used to collect a complete record of the terminal session.
  1497. X.TP
  1498. X.B ^A-2
  1499. XToggles the data logging option without prompting for a new file
  1500. Xname.  The status line shows the current data logging mode.
  1501. X.SH CONFIGURATION
  1502. X.I Pcomm
  1503. Xmust have access to the terminfo or termcap data for the terminal
  1504. Xbeing used.  The minimum capabilities include a screen size of at
  1505. Xleast 80 columns by 24 lines and cursor movement capabilities.
  1506. XRunning
  1507. X.I pcomm
  1508. Xfrom terminals at relatively slow speeds (i.e.: 1200 baud) will cause
  1509. Xthe windows to appear sluggish.
  1510. X.PP
  1511. XTerminals that don't have arrow keys or systems without the newer
  1512. Xversions of curses(3) will require the user to substitute the
  1513. Xletter 'U' for 'up arrow' and 'N' for 'down arrow'.
  1514. X.PP
  1515. XThere are three pcomm support files that contain information such as
  1516. Xthe default parameters, the modem/tty database, and dialing directory
  1517. Xentries.  The following directories are searched to find these files:
  1518. X.PP
  1519. X.RS 5
  1520. X.nf
  1521. Xo+ directory given with the '-d' option
  1522. Xo+ directory in the PCOMM environmental variable
  1523. Xo+ current directory
  1524. Xo+ default library directory
  1525. X.fi
  1526. X.RE
  1527. X.PP
  1528. XThe 'index' field in the dialing directory serves two purposes.
  1529. XThe first use is to act as a short cut into the dialing directory with
  1530. Xthe '-f' command line option.  The second use is to specify a tty name
  1531. Xfor a given entry.  If the 'index' is a valid device name, that
  1532. Xdevice is used instead of searching the tty database for a free port.
  1533. X.SH FILES
  1534. X.nf
  1535. Xpcomm.dial_dir        the dialing directory
  1536. Xpcomm.modem           the modem/tty database
  1537. Xpcomm.param           the start-up default parameters
  1538. X.fi
  1539. X.SH SEE ALSO
  1540. Xxmodem(1), mdm(1)
  1541. echo shar: "12 control characters may be missing from 'Pcomm.1'"
  1542. SHAR_EOF
  1543. if test 6287 -ne "`wc -c < 'Pcomm.1'`"
  1544. then
  1545.     echo shar: "error transmitting 'Pcomm.1'" '(should have been 6287 characters)'
  1546. fi
  1547. fi
  1548. echo shar: "extracting 'Pcomm.dial_dir'" '(319 characters)'
  1549. if test -f 'Pcomm.dial_dir'
  1550. then
  1551.     echo shar: "will not over-write existing file 'Pcomm.dial_dir'"
  1552. else
  1553. sed 's/^X//' << \SHAR_EOF > 'Pcomm.dial_dir'
  1554. XDIR_1=Abbey Road;1 (512) 590-6036;2400-N-8-1;F;
  1555. XDIR_2=Tel-Med-Com;526-8686;1200-E-7-1;F;
  1556. XDIR_3=C Board;1 (619) 722-8724;2400-N-8-1;F;
  1557. XDIR_4=Crest;1 (213) 471-2518;2400-N-8-1;F;crest
  1558. XDIR_5=Last Chance;1 (219) 762-8411;2400-E-7-1;F;
  1559. XDIR_6=Killer;1 (214) 827-1994;1200-E-7-1;F;
  1560. XDIR_7=System A (direct);;9600-E-7-1;F;tty12
  1561. SHAR_EOF
  1562. if test 319 -ne "`wc -c < 'Pcomm.dial_dir'`"
  1563. then
  1564.     echo shar: "error transmitting 'Pcomm.dial_dir'" '(should have been 319 characters)'
  1565. fi
  1566. fi
  1567. echo shar: "extracting 'Pcomm.modem'" '(248 characters)'
  1568. if test -f 'Pcomm.modem'
  1569. then
  1570.     echo shar: "will not over-write existing file 'Pcomm.modem'"
  1571. else
  1572. sed 's/^X//' << \SHAR_EOF > 'Pcomm.modem'
  1573. XTTY_1=tty10;HAYES;1200
  1574. XTTY_2=tty11;HAYES;2400
  1575. XTTY_3=tty12;DIRECT;9600
  1576. XMODEM_1a=HAYES;ATS7=45S11=70!;ATDT;!;~~+++~~ATH0!
  1577. XMODEM_1b=CONNECT!;CONNECT 1200;CONNECT 2400;;;
  1578. XMODEM_1c=BUSY;VOICE;NO CARRIER;
  1579. XMODEM_2a=DIRECT;;;;
  1580. XMODEM_2b=;;;;;
  1581. XMODEM_2c=;;;;
  1582. SHAR_EOF
  1583. if test 248 -ne "`wc -c < 'Pcomm.modem'`"
  1584. then
  1585.     echo shar: "error transmitting 'Pcomm.modem'" '(should have been 248 characters)'
  1586. fi
  1587. fi
  1588. echo shar: "extracting 'Pcomm.param'" '(362 characters)'
  1589. if test -f 'Pcomm.param'
  1590. then
  1591.     echo shar: "will not over-write existing file 'Pcomm.param'"
  1592. else
  1593. sed 's/^X//' << \SHAR_EOF > 'Pcomm.param'
  1594. XD_BAUD=1200
  1595. XD_PARITY=E
  1596. XD_DBITS=7
  1597. XD_SBITS=1
  1598. XHOT=1
  1599. XASCII_HOT=^A
  1600. XD_DUPLEX=FULL
  1601. XFLOW=XON/XOFF
  1602. XCR_IN=CR
  1603. XCR_OUT=CR
  1604. XLOGFILE=pcomm.log
  1605. XDUMPFILE=pcomm.dump
  1606. XSTRIP=YES
  1607. XPAUSE_CHAR=~
  1608. XCR_CHAR=!
  1609. XCTRL_CHAR=^
  1610. XESC_CHAR=|
  1611. XABORT=KEEP
  1612. XCDELAY=35
  1613. XPAUSE=5
  1614. XLECHO=NO
  1615. XEXPAND=NO
  1616. XCR_DELAY=0
  1617. XPACE=NO
  1618. XCR_UP=NONE
  1619. XLF_UP=NONE
  1620. XTIMER=5
  1621. XCR_DN=STRIP
  1622. XLF_DN=NONE
  1623. XLD_PLUS=
  1624. XLD_MINUS=
  1625. XLD_AT=8,
  1626. XLD_POUND=9
  1627. SHAR_EOF
  1628. if test 362 -ne "`wc -c < 'Pcomm.param'`"
  1629. then
  1630.     echo shar: "error transmitting 'Pcomm.param'" '(should have been 362 characters)'
  1631. fi
  1632. fi
  1633. exit 0
  1634. #    End of shell archive
  1635.  
  1636.  
  1637.